Not Applicable.
Not Applicable.
1. Field of the Invention
The present invention relates to electronically controlled hydraulic systems for operating machinery, and in particular to a software operating system which governs execution of a control program by a controller in the hydraulic system.
2. Description of the Related Art
A wide variety of machines have members which are moved by an hydraulic actuator, such as a cylinder and piston arrangement that is controlled by a hydraulic valve. Traditionally the hydraulic valve was manually operate by the machine operator. There is a present trend away from manually operated hydraulic valves toward electrical controls and the use of solenoid operated valves. This type of control simplifies the hydraulic plumbing as the control valves do not have to be near the operator station, but can be located adjacent the actuator being controlled. This change in technology also enables sophisticated computerized control of the machine functions.
In a typical electrical control system, application of pressurized hydraulic fluid from a pump to a cylinder is controlled by a set of four proportional solenoid operated pilot valves, as described in U.S. Pat. No. 5,878,647. One pair of valves controls the flow of fluid from a supply line into the cylinder chambers on opposite sides of the piston and another pair of valves controls the flow of fluid from those cylinder chambers into a tank return line. By selectively opening a valve in each pair, the piston can be extended or retracted with respect to the cylinder.
Proportional solenoid operated pilot valves are well known for controlling the flow of hydraulic fluid. This type of valve employs an electromagnetic coil to move an armature that acts on the valve element which controls the flow of fluid. The amount that the valve opens is directly related to the magnitude of electric current applied to the electromagnetic coil, thereby enabling proportional control of the hydraulic fluid flow. Either the armature or the valve element is spring loaded to close the valve when electric current is removed from the solenoid coil.
When an operator desires to move a member on the machine, an input device, such as a joystick, is operated to produce an electrical signal indicative of the desired direction and rate at which the corresponding hydraulic actuator is to move. The faster the actuator is desired to move, the farther the joystick is moved from its neutral position. A control circuit receives a joystick signal and responds by producing an electric current of a given level that will drive the solenoid coil to open the associated valve element. The controller also monitors pressure at various locations in the hydraulic system to control the pump, and to ensure proper operation of the cylinders.
This type of hydraulic system is being incorporated onto construction and agricultural equipment. Although a hydraulic system and its control techniques are fundamentally the same throughout a line of machines, such as backhoes, the specific. characteristics of each machine model previously required that a different software program be written for each model. For example, the size of the cylinders and their flow requirements often differ from model to model and more expensive machine models usually have more functions and features.
Conventional software programming techniques required that a program be extensively modified for the different models. Thus it is desirable to create a control system that is easily modified to account for the specific characteristics of each machine model.
A programmable controller for operating a machine has input circuits and output circuits which interface to devices on the machine and has a processor for executing software. A memory contains a plurality of function routines, which process data to control operation of the machine, and a number of data files. A first data file stores data for a plurality of variables. A second data file holds a plurality of first memory location designators each identifying a function routine wherein the information in the second data file specifies the order in which the listed function routines are to be executed by the processor. A third data file stores a plurality of records, each of which is associated with a given first memory location designator and identifies those of the plurality of variables that are required during execution of the function routine identified by that particular first memory location designator.
A code sequencer accesses the second data file and directs execution of the function routines in the sequence specified by the plurality of first memory, location designators. As a given function routine is being executed by the processor, the third data file record associated with the first memory location designator for the given function routine is employed to access the variables in the first data file which are required by that execution.
In another embodiment of the present invention, the memory also stores an input parameter database comprising a plurality of records containing information for use in processing signals received by input circuits of the controller. An output parameter database in the memory stores a plurality of records containing information for use in producing an output signal. Input and output drivers use the information in the records of the respective input and output parameter databases to process signals exchanged with the input and output circuits.